/* ---------------------------------------------------------------------------------------------
 *  公共 API: 系统管理
 *
 *  代理地址：http://tles.gwwisdom.com
 * --------------------------------------------------------------------------------------------- */

import conf from 'admin/config'

import { initAPI } from 'admin/utils/request'
import { resolvePath } from 'admin/utils'

const { baseURL } = conf.api
const moduleBaseURL = '/sys/v1/publics'

// 这里为了展示如何自定义配置需要的 createAPI
// 预设默认需要带上 loading 加载动画
const createAPI = initAPI(moduleBaseURL, { showLoading: true })
const createAPINoLoading = initAPI(moduleBaseURL)

// 这里的配置理论需要根据项目来
export const getDepListUrl = id => resolvePath(baseURL, moduleBaseURL, `/orgs/${ id }/deps`) // 获取机构的部门列表Url
export const getUserListUrl = () => resolvePath(baseURL, moduleBaseURL, '/users') // 用户查询Url

// 这里常规即可
export const getOrgTree = () => createAPI('/orgs/tree', 'get') // 获取系统的组织机构树
export const getOrgUserTree = () => createAPI('/orgs/user-tree', 'get') // 获取当前用户的组织机构树
export const getDepList = id => createAPI(`/orgs/${ id }/deps`, 'get') // 获取机构的部门列表
export const getDepTree = id => createAPI(`/orgs/${ id }/deps/tree`, 'get') // 获取机构的部门树
export const getDepListByCode = code => createAPI(`/orgs/by-code/${ code }/deps`, 'get') // 根据Code获取机构的部门列表
export const getDepTreeByCode = code => createAPI(`/orgs/by-code/${ code }/deps/tree`) // 根据Code获取机构的部门树
export const getRegionRoots = () => createAPI('/regions/roots', 'get') // 查询根级行政区划列表
export const getRegionRootItems = () => createAPI('/regions/root-items', 'get') // 查询根级行政区划列表(返回GwListItem)

export const getRegionSubs = code => createAPINoLoading(`/regions/${ code }/subs`, 'get') // 通过代码查询行政区划子级列表
export const getRegionSubItems = code => createAPINoLoading(`/regions/${ code }/sub-items`, 'get') // 通过代码查询行政区划子级列表(返回GwListItem)
